home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
United Public Domain Gold 2
/
United Public Domain Gold 2.iso
/
music_utilities
/
pt011.dms
/
pt011.adf
/
K1_Editor
/
K1_Editor_E.doc
< prev
next >
Wrap
Text File
|
1990-03-20
|
15KB
|
345 lines
Kawai K1(m) »Single« Sound Editor Version 1.00
==============================================
1. General info
===============
The editor needs the midi.library by Bill Barton and the req.library by
Colin Fox and Bruce Dawson. (Thanks, Bill! Thanks, Colin and Bruce!)
There are two versions, one in german and one in english language.
Up to now, the K1-editor doesn't contain a librarian. I'll add one and an
editor for multisounds as well, when I get the time. For now, you can
imitate the functions of a librarian with the load and save options.
The K1-editor is SHAREWARE. Try it, test it, and then decide whether to
keep and use it. If you decide to keep&use it, please send me some money.
(Question: What would you have to pay for it in the shops?)
In any case, the distribution files of the editor (which are sources,
executables and documentations) have to be kept together.
Send suggestions, bug reports and money to:
Michael Balzer
Wildermuthstraße 18
5828 Ennepetal 14
W-GERMANY
1.1 Requester
-------------
All requesters are from the req.library, what means the shortcuts are
unique even on different gadgettexts. There is always R=Resume, Y=left
gadget, M=middle gadget (if there is one) and N=right gadget. There are
some more shortcuts; read the docs to the lib.
1.2 MIDI
--------
Because the editor uses the midi.library, it has full capability of
multitasking in any midi-environment, that also uses this library.
1.3 K1 II
---------
I was one of the last to get a K1 I (grumble), and therefore don't know,
how the dump format and the specifications on ID_ACKNOWLEDGE differ in
Version II of this great synth. Maybe the editor doesn't even start with a
K1 II connected. In this case: Send me a note on that and add a copy of
the midi-specifications of the II, I promise I will start to work on it
immediately. If there's only a difference in the synth's ID: See chapter
5 on how to change the source.
2. Starting
===========
On startup, you can give the editor a single argument, which determines,
whether to use the interlaced mode. From CLI this is an 'L' or "Lace" (the
uppercase L is the only important thing), and from workbench you get the
info on the editor icon and add the ToolType "LACE=ON". (This is mainly
for those people with a FlickerFixer. When I get the new Denise, I will
also add support for ECS screen mode. Besides that: May be there's no
need for changes, because I make use of the viewmodes of the
workbenchscreen...) In general, the editor opens his screen with the
resolution and modes of the workbenchscreen (for overscan-wb's) and if the
wb is interlaced, the editor will be too.
After loading, the editor will scan the midichannels for a connected K1.
If no ID_ACKNOWLEDGE was received, the editor asks, whether to start anyway
or cancel. During that session, there will be no possibility to switch the
midi-support on, if you want to do so, you will have to restart the editor.
If you start without midi, some menus are disabled (those, which only make
sense with midi).
If you want to have the editor running some more times, for example when
having more than one K1 connected, you have to take care that the K1 to
access responds on the lowest midichannel. Depending on the current setup,
you might have to disconnect the other K1's until the program has found the
proper K1.
When the channel is fixed, the editor reads the two internal soundbanks of
the K1. If you answer the following question concerning the existence of
an external cartridge with 'yes', the editor will also read the external
memory. When all the reading is done, the editor opens its screen and the
windows and shows a SimpleRequest containing version number and shareware
disclaimer.
3. The display
==============
The display contains four windows, which correspond to the four
edit-windows of the K1. Because the windows overlap each other, I
recommend the usage of a utility like Matt Dillon's "DMouse". Of course,
there is no restriction on positioning the windows.
In the following, I won't explain the K1-specific parts, when interested in
those things, have a look at the manual. There is only one word to say
about all functions: Try! If you know standard intuition/Amiga usage, you
know how to use my editor. If you like experimenting a bit and do know the
K1, you probably won't need to read the rest of this manual.
3.1 COMMON-Parameters
---------------------
In this window, you find the common parameters for a single sound. The
proportional gadget on the upper left together with the "CARD" toggler
selects the sound, you want to edit. The name field below is a string
gadget (notice: this field will automatically be filled with spaces, so
you will have to delete them before writing in a new name). The graph on
the left displays the AutoBend curve. The left prop over there controls
the ABend-depth, that one below the time, the above prop controls the KS ->
Time and the prop on the right the Velocity -> Depth modulation. The
values of the proportional gadgets which are connected to graphics are
displayed in a small field in the upper right corner of the screen, so you
can adjust them exactly.
The right hand graph shows the LFO-settings, where again the left prop
controls depth and the prop below time. That one on the right side sets
the Aftertouch -> Depth modulation. Clicking on the graph itself switches
the LFO shape. (Excuse the lousy random - but in fact, the K1 hasn't got
true random itself...)
The KS curve switches on clicking at it, and the arrow right hand of the
Pitch Wheel prop selects whether to have the Modulation Wheel modulate
depth or speed of the LFO. Poly Mode and number of used sources switch on
clicking too.
A word about selecting a sound: Every time you select a new sound to edit,
the program sends a ProgramChange command to the K1. And, vice versa, if
another sound is selected at the K1, the editor will react and change to
that sound too (of course only possible if your K1 sends ProgChange).
There is a small problem about that: The K1 has and gives no ability to
make a difference between internal and external sounds. So if you switch
sounds between int and ext, you have to set the appropriate soundbank on
the other machine YOURSELF.
3.2 WAVEFORM window
-------------------
Displays Mute, Waveforms and amplitude modulations for all the four
sources. On switching the REVERSE amplitude modulation on or off, the
parameters of the belonging sources are swapped. This is what the K1
internally does too (only god and the technicians at Kawai knows why). The
waveform names have two extra letters, which have the following meaning:
1. Letter V (for VM-Waveform)
2. Letter b = Bass
l = Low
m = Middle
t = Treble
h = High
or
1. Letter P (for PCM-Sample)
2. Letter o = One Shot
l = Loop
L = Omni Loop
r = Reverse
a = Alternate
3.3 ENVELOPE window
-------------------
Only one of the four sources can be displayed at a time in this window.
The velocity curve switches on clicking like the KS curve. The graph
displays the envelope of the actual source, where the left prop controls
the Level of the envelope, that one on the upper left the Delay, that one
below the Attack, that one on the lower right the Decay, that one above the
Release and the prop on the right side controls the Sustainlevel.
3.4 FREQUENCY parameters
------------------------
The last one of the four windows displays the frequency parameters of all
of the four sources. With these also go (ask Kawai about that) the
switches for aftertouch -> frequency on/off and vibrato/abend on/off.
Depending on Key Track is whether to have Freq Coarse or Fixed Key. Freq
Coarse is displayed in whole and half notes.
3.5 Special functions concerning display
----------------------------------------
The keys '1' to '4' select the source, that shall be displayed in the
envelope window. The key 'C' puts the common-window to front, the 'W' the
waveform-window, 'E' stand for envelope-window to front and 'F' for (what
else) frequency-window.
The field where the values of the graphprops are displayed is in fact a
tiny window, which pops to front whenever such a prop is activated. A bug
in intuition has the effect, that this doesn't happen until the propgadget
is released. There's no problem about that, because this field is most of
the time visible. If you just want to know the value of such a prop, click
once on the gadget's knob.
4. Menus
========
There are four main menus; Project, Dump, Special and Setup. All but the
menus in Setup can be reached via shortcuts. This is the preferable -
because faster - way. There's no difference between the german and the
english shortcuts (would be unnecessarily confusing).
4.1 Project
-----------
Load and save act quite normal, read and write concern the memory of the
synthesizer. Choosing one of this menus produces a requester about which
to have this act on:
Actual block = Those 32 sounds, where the actual sound belongs to
All = Complete memorydump with 128 singles
Actual sound = The sound you're just working on
The different files get their own extensions, so you know which is what.
With the save/load functions you can archive your sounds and later load
them into another configuration. Compared to a true librarian, this is a
very complicated procedure, but up to now, I haven't got the time to
implement some kind of librarian. Probably will be in an upgrade.
I think you know what "Quit" is for.
4.2 Dump
--------
A dump is a complete Synthmemdump, that means 64 singles with the attached
32 multis. Therefore the functions in the Dumpmenu only need a filename
and whether to take the internal or external (cartridge) bank. Dumpfiles
have the extension ".dump", and they get an info file, a project type icon,
so that they run the PutDump program on doubleclicking. The two programs
"PutDump" and "GetDump" have exactly the same function as the two Dump
menuitems.
4.3 Special
-----------
I implemented some special functions, mainly for having methods to quickly
create interesting basic sounds. All the special functions work in the
same way, at least in their setup. For each one you can select, on which
parameters (COM, WAV, ENV and FRQ) and on which sources (1 to 4) this
function shall act on. The C's on the upper right mean "Cartridge".
All these functions are working in a purely mathematical way. So on the
waveforms for example, it is just luck, if the resulting parameter really
sounds like crossing the two original waveforms, especially with the
samples...
Exchange: The simple function. Exchanges parameters of two sounds.
Mix : Mix one sound to another, with adjustable weight. 100 percent
means copying.
Range : Calculates a (mathematically correct!) range from the beginning
sound up to the ending sound, with adjustable random.
Copy : Copies one sound into another, with adjustable random.
By the way: In some cases I noticed a pretty good connection between the
resulting and the original sounds. Especially ranges give good results.
And be careful on random...
The last menuitem in the Special menu is "Test Sound". If you choose it, a
little sequence will be played, so you can easily test a sound in a complex
arrangement - without running for the keyboard. This option is also meant
for K1m users. (See also chapter 5)
4.4 Setup
---------
In this menu, you can set some basic setups:
Autowrite means, the actual sound will be sent back to the K1 immediately
after any parameter change. So every change is immediately in your
keyboard, ready-to-test.
Wavetest enables/disables the test-tone during the selection of another
waveform for any source. On enabling this item, you can set the pitch of
the test-tone. With this function, you can easily choose a good
combination of waveforms.
"Change colors" displays the colorrequester of the req.library. After
changing the colors, you can save the new configuration. It then will be
set immediately on the next startup.
5. Technical info
=================
The editor creates the file:
K1EDcolors in DEVS: (Colorconfiguration)
The editor needs the files:
MIDIicon in T: (Icon for dumps)
TestSequenz in T: (Sequence for "Test Sound")
Of course, the MIDIicon may be any icon of that type, simply create your
own artwork and copy it over the MIDIicon.
The TestSequenz is simply a textfile, which contains one command and two
parameters per line. The command may be one of { D, 1, 0, A }, and the
number of parameters has to be two even when not necessary:
D nn 0 --- Delay of nn/50 seconds
1 nn vv --- Note nn with velocity vv ON
0 nn 0 --- Note nn OFF
A 0 0 --- All Notes OFF
With this commands, it is even possible to create little pieces of music
and use them to test one's sounds.
Sorry about the delay on the wavetest, it had to be inserted because the
synth wasn't fast enough in storing the new parameter.
K1 II: If only the ID changed, you can change the source code yourself:
All the MIDI messages are defined in the header file "kawai_k1.h". In this
file, you will find the defines for KAWAI_K1 (Machine ID no.), K1_MIR
(Machine ID Request) and K1_MIA (Machine ID Acknowledge). The values to
put there can be found in the MIDI-definitions manual that goes with the
synthesizer. After changing the defines you have to recompile the editor.
The screen, windows and gadgets were made with PowerWindows and the program
was developed on Manx Aztec C (with 32 bit ints). A 16 bit version will
follow, probably when I get the new Lattice. A word on the refresh: I
hacked in those routines concerning graphics and data transfer without
thinking about optimal performance and efficiency. I didn't care about
that, because the main work has to be done by the GadgetRefresh routines.
Will probably change with the new Lattice.
I have learned a lot about Intuition while programming this editor, and I
strongly recommend this to all young programmers: Working on a project like
this, to get a better understanding of your personal workstation Amiga.
This is my first try in shareware.
Happy programming!